package com.sign2024.sign2024project.projectservice.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sign2024.sign2024core.entry.projectservice.RecordCollect;
import com.sign2024.sign2024core.entry.projectservice.RecordCollectTemp;
import com.sign2024.sign2024project.projectservice.param.RecordCollectParam;

import java.util.List;

/**
 * 获取记录汇总 业务层
 *
 * @author yujie
 * @data 2024/7/26 10:29
 */
public interface RecordCollectService {

    /**
     * 分页查询 记录汇总 信息
     *
     * @param param 分页参数
     * @return 分页数据信息
     */
    Page<RecordCollectTemp> pageRecordCollectTemp(RecordCollectParam param);

    /**
     * 获取记录汇总临时数据表 excel 数据导入
     *
     * @param list   获取记录汇总表 列表
     * @param taskId 任务 id
     */
    void excelImportRecordCollectTemp(List<RecordCollectTemp> list, Integer taskId);

    /**
     * 通过 任务 id 删除数据
     *
     * @param taskId 任务 id
     * @return 是否删除成功
     */
    boolean deleteTempById(Integer taskId);

    /**
     * 通过 任务 id 统计获取记录汇总数据  同一标段下投标人名称的条目数
     *
     * @param taskId 任务 id
     * @return 统计获取记录汇总数据  同一标段下投标人名称的条目数
     */
    List<RecordCollect> countRecordCollect(Integer taskId);

    /**
     * 处理 统计获取记录汇总 数据
     *
     * @param taskId 任务 id
     */
    void dealWithRecordCollect(Integer taskId);

    /**
     * 通过 任务 id 删除数据
     *
     * @param taskId 任务 id
     */
    void deleteRecordCollectByTaskId(Integer taskId);

}
